﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SlideShow.Models;
using System.Web.Mvc;

namespace SlideShow.Controllers
{
    public class InscripcionController : Controller
    {

        CursosPortal.CursosClient cursoPortal = new CursosPortal.CursosClient();
        InscripcionAulaV.InscripcionAvServiceClient inscripcionAulaVirtual = new InscripcionAulaV.InscripcionAvServiceClient();

        private MdlCursos CursoServ_to_Curso(CursosPortal.Curso curso)
        {
            MdlCursos Curso = new MdlCursos { id = curso.id, nombre = curso.nombre, tipo = curso.tipo, responsable = curso.responsable, duracionHoras = curso.duracionHoras, preRequisito = curso.preRequisito };
            return Curso;

        }

        private List<MdlCursos> ListarCurso()
        {

            List<CursosPortal.Curso> lista_Curso = cursoPortal.listarCursos().ToList();

            List<MdlCursos> Lista_retorna = new List<MdlCursos>();
            foreach (CursosPortal.Curso element in lista_Curso)
            {
                Lista_retorna.Add(CursoServ_to_Curso(element));
            }
            return Lista_retorna;
        }

        private InscripcionAulaV.Inscripcion Inscrpcion_to_InscrpcionServ(Inscripcion inscripcion)
        {
            InscripcionAulaV.Inscripcion Inscripcion = new InscripcionAulaV.Inscripcion { id_inscripcion = inscripcion.id_inscripcion, id_curso = inscripcion.id_curso, nombre_curso = inscripcion.nombre_curso, email = inscripcion.email, duracionHoras = inscripcion.duracionHoras };
            
            return Inscripcion;

        }

        public InscripcionAulaV.Inscripcion Inscripcion(Inscripcion inscripcion)
        {

            return inscripcionAulaVirtual.CrearInscripcion(Inscrpcion_to_InscrpcionServ (inscripcion));


        }

        public ActionResult Index()
        {
            List<MdlCursos> lista_cursos = ListarCurso();
            ViewData["Cursos"]= lista_cursos;

            return View();
        }


    }
}